// 引入express模块
const express = require('express');
// 引入cors模块
const cors = require('cors');
// 引入utils模块
const { logger } = require('./utils/logger');
// 引入users模块
const user = require('./routes/users');
const modbus = require('./routes/modbus/meReadWrite');
const qiniuStorage = require('./utils/qiniuStorage');



// 引入index模块
const home = require('./routes/home');
const hbs = require('./routes/hbs');
const { port } = require('./db/mySqlDb');
const bodyParser = require('body-parser');
// 实例化express对象
const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
// 使用utils模块中的logger函数
app.use(logger) 
// 使用cors模块
app.use(cors()) 
  
app.use('/user', user);// 注册路由，使用user接口模版
app.use('/modbus', modbus);// 注册路由，使用modbus接口模版
app.use('/', qiniuStorage);// 注册路由，使用七牛云存储
app.use('/', home);// 注册路由，使用home接口模版1
app.use('/', hbs); // 注册路由，使用hbs模版引擎


app.set('views', 'views');
app.set('view engine', 'hbs');// 指定模版引擎为Handlebars
app.use(express.static('public'))  //注册静态资源中间件
// 监听端口，当端口监听成功时，输出提示信息
app.listen(port, () =>{
    console.log(`http://localhost:${port} 服务已启动`)
})
// 监听开启的websocket服务器
const websocketservice = require('./routes/webScoket/readModBus')
websocketservice.listener()